Program development is an iterative process engaged in by a program developer in a program development environment. The process of creating executable code requires a significant amount of time on the part of the developer in running different versions of the code. The developer will frequently add or subtract different lines of code and or alter values for variables in the code in an effort to reach a desired result or optimize the execution of a piece of code. For developers in an interpreted language development environment, this editing and execution process will frequently take place either from a command line or from an editor. An interpreted language environment executes code line by line with an interpreter without first compiling the entirety of the code. The command line in an interpreted language development environment allows a line by line execution of the code and may allow the code to be resolved to a small number of commands appearing in a command window. The editor groups many lines of code together for the program developer to access and alter as needed.
Unfortunately, both the command line and the editor have drawbacks for developers in an interpreted program development environment. With the command line, output appears in place, but there is no line-by-line grouping. As a result, the scope of the code is difficult to track. With the editor, many lines may be grouped together, but the developer/user is required to name and save the file each time prior to attempting to execute the code so that it can be analyzed. This requires the developer's mental effort and also generates large amounts of unwanted data on the system from leftover code versions.